package com.authorization.project.single.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.authorization.framework.aspectj.lang.annotation.Excel;
import com.authorization.framework.web.domain.BaseEntity;
import java.util.Date;
import java.util.List;

/**
 * 授权注册信息对象 single_authorization
 * 
 * @author 李晓雷
 * @date 2020-07-11
 */
public class SingleAuthorization extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 客户编号 */
    private String userid;

    /** 客户全称 */
    @Excel(name = "客户全称")
    private String username;

    /** 购买微服务 */
    @Excel(name = "购买微服务")
    private String services;

    /** 授权开始日期 */
    @Excel(name = "授权开始日期", width = 30, dateFormat = "yyy-MM-dd ")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date begidate;

    /** 停止日期 */
    @Excel(name = "停止日期", width = 30, dateFormat = "yyy-MM-dd")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date enddate;

    /** 网址 */
    @Excel(name = "网址")
    private String urls;

    /** 机器码（ip+mac地址） */
    @Excel(name = "机器码", readConverterExp = "i=p+mac地址")
    private String machineCode;

    /** 自定义配置 */
    @Excel(name = "自定义配置")
    private String config;

    /** 状态（1已提交 2已审核0拒绝） */
    @Excel(name = "状态", readConverterExp = "1=已提交,2=已审核0拒绝")
    private String status;

    /**--------客户编号--------**/
    private String userNumber;

    /**微服务集合**/
    private List<Long> serviceIdsList;

    public List<Long> getServiceIdsList() {
        return serviceIdsList;
    }

    public void setServiceIdsList(List<Long> serviceIdsList) {
        this.serviceIdsList = serviceIdsList;
    }

    public String getUserNumber() {
        return userNumber;
    }

    public void setUserNumber(String userNumber) {
        this.userNumber = userNumber;
    }

    public void setUserid(String userid)
    {
        this.userid = userid;
    }

    public String getUserid() 
    {
        return userid;
    }
    public void setUsername(String username) 
    {
        this.username = username;
    }

    public String getUsername() 
    {
        return username;
    }
    public void setServices(String services) 
    {
        this.services = services;
    }

    public String getServices() 
    {
        return services;
    }
    public void setBegidate(Date begidate) 
    {
        this.begidate = begidate;
    }

    public Date getBegidate() 
    {
        return begidate;
    }
    public void setEnddate(Date enddate) 
    {
        this.enddate = enddate;
    }

    public Date getEnddate() 
    {
        return enddate;
    }
    public void setUrls(String urls) 
    {
        this.urls = urls;
    }

    public String getUrls() 
    {
        return urls;
    }
    public void setMachineCode(String machineCode) 
    {
        this.machineCode = machineCode;
    }

    public String getMachineCode() 
    {
        return machineCode;
    }
    public void setConfig(String config) 
    {
        this.config = config;
    }

    public String getConfig() 
    {
        return config;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("userid", getUserid())
            .append("username", getUsername())
            .append("services", getServices())
            .append("begidate", getBegidate())
            .append("enddate", getEnddate())
            .append("urls", getUrls())
            .append("machineCode", getMachineCode())
            .append("config", getConfig())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
